package net.fruit.mq.client.transaction;

import net.fruit.mq.client.Admin;
import net.fruit.mq.client.Message;
import net.fruit.mq.client.SendResult;

/**
 * 发送分布式事务消息
 */
public interface TransactionProducer extends Admin {
    /**
     * 启动服务
     */
    public void start();

    /**
     * 关闭服务
     */
    public void shutdown();

    public SendResult send(final Message message, //
                           final LocalTransactionExecuter executer, //
                           final Object arg);
}
